export default {
  // 端口
  port: 4000,

  // swgger接口文档配置
  swagger: {
    title: '后台管理系统文档',
    description: 'NestJs 后台文档，默认使用/api前缀',
    version: '1.0.0', // 文档版本
    url: 'api-doc' // 文档地址
  },
  // 数据库
  database: {
    type: 'mysql', // 指定要连接的数据库类型，这里是 MySQL。
    host: 'localhost', // 数据库服务器的主机名，这里是本地主机，也可以是 IP 地址或域名。
    port: 3306, // 数据库服务器的端口号，默认 MySQL 的端口号是 3306
    username: 'root', // 连接数据库的用户名
    password: '123456', // 连接数据库的密码
    database: 'matcha_app', // 要连接的数据库名称
    synchronize: true, // 设置为 true 时，TypeORM 会自动同步实体的结构到数据库中，适用于开发环境。在生产环境中应该禁用此选项。初始化的时候开启
    // entityPrefix: 'matcha_', // 用于设置实体（Entities）的前缀。当您的实体类名需要添加统一的前缀时，可以使用 entityPrefix 来指定前缀内容；例如，如果您的实体类名为 User，并且希望所有实体类名都以 App 作为前缀，可以将 entityPrefix 设置为 "App"，这样实体类名就会变成 AppUser
    logging: false, // 设置为 true 时，TypeORM 会输出日志信息，便于调试。在生产环境中应该关闭日志记录
    timezone: 'local', //  用于设置 TypeORM 连接的数据库时区。在某些情况下，数据库的时区设置可能会影响到查询结果的时间戳等内容。通过设置 timezone，可以确保 TypeORM 在与数据库交互时使用正确的时区，避免时间相关的问题。
    autoLoadEntities: true, // 是一个布尔值选项，用于指定是否自动加载实体（Entities）。当设置为 true 时，TypeORM 会自动加载指定路径下的实体类；设置为 false 时，需要手动指定要加载的实体类。这个选项可以方便地管理实体类的加载，特别是在项目结构较复杂或实体较多的情况下
    maxQueryExecutionTime: 1500, //  用于设置 TypeORM 执行查询的最大时间限制。如果查询执行时间超过设定的时间限制，TypeORM 将会中断查询并抛出异常.控制查询的执行时间，避免长时间运行的查询影响系统性能。
    connectorPackage: 'mysql2', // 数据库服务器的端口号，默认 MySQL 的端口号是 3306
    migrations: [], // "migrations": ["src/migration/**/*.ts"]：指定迁移（Migrations）的路径，用于数据库结构的变更和迁移。
    subscribers: [], // "subscribers": ["src/subscriber/**/*.ts"]：指定订阅者（Subscribers）的路径，用于监听数据库操作事件。
    poolSize: 10 // 线程池
  },

  // session
  session: {
    secret: 'matcha', // 简单的密钥 - 用于生成和验证会话ID的签名 - 生产环境中，你应该使用一个强随机密钥
    resave: false, // 设置resave: false后，会话只有在被修改时才会被保存。这有助于减少数据库操作，提高性能
    saveUninitialized: false, // 只有在会话数据实际被设置后，会话才会被保存到存储中。这同样有助于减少不必要的数据库操作
    // name: 'matcha.session', // 生成客户端cookie 的名字 默认 connect.sid 
    rolling: true, // 在每次请求时强行设置 cookie，这将重置 cookie 过期时间(默认:false)
    // 设置返回到前端 key 的属性，默认值为{ path: ‘/’, httpOnly: true, secure: false, maxAge: null }
    // secure为true是https，否则都是http连接
    cookie: { secure: false, maxAge: null }
  },


  // jwt secret
  jwt: {
    secret: 'matcha',
    expires: '1h',
  },

    // redis
    redis: {
      host: 'localhost',
      port: 6379,
    },


    // ip 在线查询接口 百度的
    ipUrl: 'https://qifu-api.baidubce.com/ip/local/geo/v1/district'
};
